[アップデート] Amazon CloudWatch Metric Streams が追加統計情報を新たにサポートしました
Amazon CloudWatch Metric Streamsに様々な統計情報を追加できるように
こんにちは、のんピ(@non____97)です。
Amazon CloudWatch Metric Streams が追加統計情報を新たにサポートされました。
Amazon CloudWatch Metric Streamsの基本的な説明は以下記事をご覧ください。
CloudWatch Metric Streamsについて言及しているサードパーティのモニタリングサービスのドキュメントを確認すると、「CloudWatch Metric Streamsはパーセンタイルはサポートしていない」と記載がありました。
- Datadog
API ポーリングを使用して Datadog がサポートする、ほとんどすべての CloudWatch のネームスペースおよびメトリクスは、Metric Streams でもサポートされます。ただし、一部例外があります。
現在、以下の CloudWatch メトリクスはサポートされていません。
- パーセンタイル統計用のメトリクス(p90、p95、p99 など)。CloudWatch Metric Streams は、現在パーセンタイル統計のストリーミングをサポートしていません。
- 時間以上前のタイムスタンプがあるメトリクス。これには、S3 デイリーストレージや一部の請求メトリクスも含まれます。
- New Relic
すべてのAWSサービスとカスタム名前空間からのすべてのCloudWatchメトリクスは、特定の統合の構築や更新を必要とせずに、New Relicで一度に 。
例外として、パーセンタイルと、CloudWatchで2時間以上遅れて利用可能になる少数のメトリクスがあり、そのためストリームには含まれません。
Amazon CloudWatch Metric Streamsの統合の紹介 | New Relic Documentation
今回のアップデートでパーセンタイルやトリム平均などが追加され、分析の幅が広がることになります。
やってみた
Amazon CloudWatch Metric Streamsの作成
それでは早速、Amazon CloudWatch Metric Streamsで任意のメトリクスに統計情報を追加して、S3バケットにメトリクスを送信してみます。
CloudWatchのコンソールを開いて、メトリクス
配下のストリーム
からメトリクスストリームの作成
をクリックします。
全てのCloudWatch Metricsをストリーミングすると見辛くなりそうな予感がしたので、選択された名前空間
を選択し、AWS/Usage
のみをストリーミングするようにします。
設定オプションはS3のクイックセットアップ
を選択しました。
S3バケットやS3バケット、Kinesis Data Firehoseに書き込むサービスロールを自動で作成してくれるので、サクッと動きを確認するときは非常に便利です。出力方式もデフォルトのJSONのままにしておきます。
続いて統計情報の選択です。
選択できる統計情報は以下の通りです。
- p99
- p95
- p90
- p80
- p70
- IQM
- tm99
- tc99
- ts99
- PR
- TC
- TM
- TS
- WM
各統計情報のより具体的な解説については以下のドキュメントを参照してください。
拡張可能となっている統計情報については任意の値に変更可能です。
例えばPR(n:m)
を選択すると、テキストエリアにPR(n:m)
が入力されます。
1から100の間の値を持つデータポイントの割合を出力したい場合はPR(1:100)
と入力し、Enterを押下するとPR(1:100)
が追加された状態になります。
今回は選択できる統計情報全て選択します。統計対象のメトリクスはCallCount
としました。
ちなみに、2022/4/19現在、拡張可能となっている統計情報はJSONのみをサポートしているらしく、出力フォーマットをOpenTelemetry 0.7
にすると拡張可能の統計情報を選択することはできません。
最後にCloudWatch Metric Streamsの名前を入力して、メトリクスストリームの作成
をクリックします。
数秒待つと、CloudWatch Metric Streamsが作成完了しました。
作成されたリソースの確認
CloudWatch Metric Streamsの名前をクリックすると各種設定やモニタリングダッシュボードが表示されます。追加の統計情報もここで確認できます。
出力先のKinesis Data Firehostの設定を確認します。
IAMロール以外はデフォルトの設定となっています。もし、ロギングや暗号化、バッファーサイズなどの設定変更を行いたい場合は別途設定が必要です。
S3のクイックセットアップ
で作成されたS3バケット、Kinesis Data Firehoseに書き込むサービスロールのIAMポリシーと信頼関係は以下のようになっていました。
- S3バケットに書き込むサービスロール
- IAMポリシー
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::metricstreams-quickpartial-iuz6ec-zkwnwulr", "arn:aws:s3:::metricstreams-quickpartial-iuz6ec-zkwnwulr/*" ] }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:<AWSアカウントID>:log-group:/aws/kinesisfirehose/MetricStreams-QuickPartial-iuZ6Ec-Vschm8So:log-stream:S3Delivery" ] } ] }
- 信頼関係
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "firehose.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
- IAMポリシー
- Kinesis Data Firehoseに書き込むサービスロール
- IAMポリシー
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "firehose:PutRecord", "firehose:PutRecordBatch" ], "Resource": [ "arn:aws:firehose:us-east-1:<AWSアカウントID>:deliverystream/MetricStreams-QuickPartial-iuZ6Ec-Vschm8So" ] } ] }
- 信頼関係
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "streams.metrics.cloudwatch.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "<AWSアカウントID>" } } } ] }
- IAMポリシー
統計情報の確認
適当にコンソールをポチポチして、CloudWatch Metric Streamsにデータが流れていくのを待ちます。
しばらくして、作成したCloudWatch Metric Streamsのモニタリングダッシュボードを確認すると、メトリクスの更新とメトリクスの更新の合計、エラーにグラフが描画されていることを確認できました。
出力先のS3バケットを確認すると、YYYY/MM/DD/HH
配下にオブジェクトが作成されていることを確認できました。
オブジェクトをダウンロードして確認すると、以下のようにJSONオブジェクトが複数行出力されていました。
{"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackInstanceOperations","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"DeliveryStreams","Service":"Firehose","Type":"Resource"},"timestamp":1650330720000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeMetricFilters","Service":"Logs","Type":"API"},"timestamp":1650330720000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackSets","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330720000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ClassicLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeEventAggregates","Service":"AWS Health APIs And Notifications","Type":"API"},"timestamp":1650330720000,"value":{"max":1.0,"min":1.0,"sum":3.0,"count":3.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":2.9699999999999998,"ts99":2.9699999999999998,"PR(1:100)":100.0,"TC(10%:90%)":2.4000000000000004,"TM(10%:90%)":1.0,"TS(10%:90%)":2.4000000000000004,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetGroupsPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackInstanceOperations","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListPolicyGenerations","Service":"Access Analyzer","Type":"API"},"timestamp":1650330720000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetGroupsPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ApplicationLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerTargetGroupPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackSets","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330780000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListAccessPoints","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerAvailabilityZonePerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeEventAggregates","Service":"AWS Health APIs And Notifications","Type":"API"},"timestamp":1650330780000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerClassicLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackInstanceOperations","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketPolicyStatus","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketOwnershipControls","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":3.0,"count":3.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":2.9699999999999998,"ts99":2.9699999999999998,"PR(1:100)":100.0,"TC(10%:90%)":2.4000000000000004,"TM(10%:90%)":1.0,"TS(10%:90%)":2.4000000000000004,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"RegisteredInstancesPerClassicLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"NetworkLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListPolicyGenerations","Service":"Access Analyzer","Type":"API"},"timestamp":1650330780000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"OnDemand","Service":"Fargate","Type":"Resource"},"timestamp":1650330720000,"value":{"max":2.0,"min":2.0,"sum":2.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketCors","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketVersioning","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetAccountPublicAccessBlock","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":4.0,"count":4.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":3.96,"ts99":3.96,"PR(1:100)":100.0,"TC(10%:90%)":3.2,"TM(10%:90%)":1.0,"TS(10%:90%)":3.2,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketWebsite","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"Spot","Service":"Fargate","Type":"Resource"},"timestamp":1650330720000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketPolicy","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketPublicAccessBlock","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":4.0,"count":4.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":3.96,"ts99":3.96,"PR(1:100)":100.0,"TC(10%:90%)":3.2,"TM(10%:90%)":1.0,"TS(10%:90%)":3.2,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListBuckets","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"GetBucketAcl","Service":"S3","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackSets","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ClassicLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeEventAggregates","Service":"AWS Health APIs And Notifications","Type":"API"},"timestamp":1650330900000,"value":{"max":1.0,"min":1.0,"sum":4.0,"count":4.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":3.96,"ts99":3.96,"PR(1:100)":100.0,"TC(10%:90%)":3.2,"TM(10%:90%)":1.0,"TS(10%:90%)":3.2,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeEventAggregates","Service":"AWS Health APIs And Notifications","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":4.0,"count":4.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":3.96,"ts99":3.96,"PR(1:100)":100.0,"TC(10%:90%)":3.2,"TM(10%:90%)":1.0,"TS(10%:90%)":3.2,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"RoutingRulesPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackInstanceOperations","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"NetworkLoadBalancersENIsPerVPC","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"DeliveryStreams","Service":"Firehose","Type":"Resource"},"timestamp":1650330900000,"value":{"max":2.0,"min":2.0,"sum":2.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListPolicyGenerations","Service":"Access Analyzer","Type":"API"},"timestamp":1650330840000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"OnDemand","Service":"Fargate","Type":"Resource"},"timestamp":1650330780000,"value":{"max":2.0,"min":2.0,"sum":2.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetGroupsPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ApplicationLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":2.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"Spot","Service":"Fargate","Type":"Resource"},"timestamp":1650330840000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"Spot","Service":"Fargate","Type":"Resource"},"timestamp":1650330780000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeMetricFilters","Service":"Logs","Type":"API"},"timestamp":1650330900000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetsPerTargetGroupPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackSets","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330900000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerClassicLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerClassicLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetGroupsPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackInstanceOperations","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"NetworkLoadBalancersPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330900000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"ListPolicyGenerations","Service":"Access Analyzer","Type":"API"},"timestamp":1650330900000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"OnDemand","Service":"Fargate","Type":"Resource"},"timestamp":1650330840000,"value":{"max":2.0,"min":2.0,"sum":2.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"TargetGroupsPerRegion","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"CertificatesPerApplicationLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeInstances","Service":"EC2","Type":"API"},"timestamp":1650330960000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":0.99,"ts99":0.99,"PR(1:100)":100.0,"TC(10%:90%)":0.8,"TM(10%:90%)":1.0,"TS(10%:90%)":0.8,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"ListenersPerNetworkLoadBalancer","Service":"Elastic Load Balancing","Type":"Resource"},"timestamp":1650330960000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"CallCount","dimensions":{"Class":"None","Resource":"DescribeMetricFilters","Service":"Logs","Type":"API"},"timestamp":1650330960000,"value":{"max":1.0,"min":1.0,"sum":2.0,"count":2.0,"p99":1.0,"p95":1.0,"p90":1.0,"p80":1.0,"p70":1.0,"IQM":1.0,"tm99":1.0,"tc99":1.98,"ts99":1.98,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.0,"TS(10%:90%)":1.6,"WM(10%:90%)":1.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/Usage","metric_name":"ResourceCount","dimensions":{"Class":"None","Resource":"StackSets","Service":"CloudFormation","Type":"Resource"},"timestamp":1650330960000,"value":{"max":1.0,"min":1.0,"sum":1.0,"count":1.0},"unit":"None"}
フォーマットすると名前空間がAWS/Usage
でメトリクス名がCallCount
のもののみ、p99やp95など追加した統計情報が出力されていることが確認できます。
{ "metric_stream_name": "QuickPartial-iuZ6Ec", "account_id": "<AWSアカウントID>", "region": "us-east-1", "namespace": "AWS/Usage", "metric_name": "CallCount", "dimensions": { "Class": "None", "Resource": "DescribeMetricFilters", "Service": "Logs", "Type": "API" }, "timestamp": 1650330960000, "value": { "max": 1.0, "min": 1.0, "sum": 2.0, "count": 2.0, "p99": 1.0, "p95": 1.0, "p90": 1.0, "p80": 1.0, "p70": 1.0, "IQM": 1.0, "tm99": 1.0, "tc99": 1.98, "ts99": 1.98, "PR(1:100)": 100.0, "TC(10%:90%)": 1.6, "TM(10%:90%)": 1.0, "TS(10%:90%)": 1.6, "WM(10%:90%)": 1.0 }, "unit": "None" } { "metric_stream_name": "QuickPartial-iuZ6Ec", "account_id": "<AWSアカウントID>", "region": "us-east-1", "namespace": "AWS/Usage", "metric_name": "ResourceCount", "dimensions": { "Class": "None", "Resource": "StackSets", "Service": "CloudFormation", "Type": "Resource" }, "timestamp": 1650330960000, "value": { "max": 1.0, "min": 1.0, "sum": 1.0, "count": 1.0 }, "unit": "None" }
対象となるメトリクスは後から変更することも可能です。
試しに名前空間をAWS/EC2
、メトリクス名をCPUUtilization
とEBSReadBytes
を変更してみます。
しばらくして出力先のS3バケットのオブジェクトを確認すると以下のようになっていました。
{"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"CPUUtilization","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":44.314450944119464,"min":7.916534724421259,"sum":52.230985668540725,"count":2.0,"p99":44.24872484217967,"p95":43.986793822995615,"p90":43.66155936957349,"p80":43.01828694632084,"p70":42.38449195393631,"IQM":25.01076798154321,"tm99":25.188062683831532,"tc99":1.98,"ts99":49.872364113986436,"PR(1:100)":100.0,"TC(10%:90%)":1.6,"TM(10%:90%)":25.23171295208864,"TS(10%:90%)":40.370740723341825,"WM(10%:90%)":25.471191906503638},"unit":"Percent"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSWriteBytes","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":2.48485376E8,"min":2270720.0,"sum":2.50756096E8,"count":2.0},"unit":"Bytes"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSReadOps","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":339.0,"min":0.0,"sum":339.0,"count":2.0},"unit":"Count"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSWriteOps","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":1271.0,"min":107.0,"sum":1378.0,"count":2.0},"unit":"Count"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"NetworkOut","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":304173.0,"min":260891.0,"sum":565064.0,"count":2.0},"unit":"Bytes"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSByteBalance%","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":99.0,"min":99.0,"sum":198.0,"count":2.0},"unit":"Percent"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSIOBalance%","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":99.0,"min":99.0,"sum":198.0,"count":2.0},"unit":"Percent"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"EBSReadBytes","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":2.5112576E7,"min":0.0,"sum":2.5112576E7,"count":2.0,"p99":2.507560372509185E7,"p95":2.4928258153167E7,"p90":2.474529313722882E7,"p80":2.4383381953623008E7,"p70":2.4026763885927953E7,"IQM":1.1887483965086192E7,"tm99":1.1979263869831756E7,"tc99":1.98,"ts99":2.3718942462266877E7,"PR(1:100)":0.0,"TC(10%:90%)":1.6,"TM(10%:90%)":1.2021244772068955E7,"TS(10%:90%)":1.923399163531033E7,"WM(10%:90%)":1.2128253417655164E7},"unit":"Bytes"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"NetworkPacketsOut","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":4350.0,"min":710.0,"sum":5060.0,"count":2.0},"unit":"Count"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"NetworkPacketsIn","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":43811.0,"min":620.0,"sum":44431.0,"count":2.0},"unit":"Count"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"MetadataNoToken","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":0.0,"min":0.0,"sum":0.0,"count":3.0},"unit":"None"} {"metric_stream_name":"QuickPartial-iuZ6Ec","account_id":"<AWSアカウントID>","region":"us-east-1","namespace":"AWS/EC2","metric_name":"NetworkIn","dimensions":{"InstanceId":"i-05faeef3f7981740b"},"timestamp":1650345000000,"value":{"max":6.2498512E7,"min":151312.0,"sum":6.2649824E7,"count":2.0},"unit":"Bytes"}
フォーマットすると名前空間がAWS/EC2
でメトリクス名がCPUUtilization
とEBSReadBytes
のもののみ、p99やp95など追加した統計情報が出力されていることが確認できます。
{ "metric_stream_name": "QuickPartial-iuZ6Ec", "account_id": "<AWSアカウントID>", "region": "us-east-1", "namespace": "AWS/EC2", "metric_name": "CPUUtilization", "dimensions": { "InstanceId": "i-05faeef3f7981740b" }, "timestamp": 1650345000000, "value": { "max": 44.314450944119464, "min": 7.916534724421259, "sum": 52.230985668540725, "count": 2.0, "p99": 44.24872484217967, "p95": 43.986793822995615, "p90": 43.66155936957349, "p80": 43.01828694632084, "p70": 42.38449195393631, "IQM": 25.01076798154321, "tm99": 25.188062683831532, "tc99": 1.98, "ts99": 49.872364113986436, "PR(1:100)": 100.0, "TC(10%:90%)": 1.6, "TM(10%:90%)": 25.23171295208864, "TS(10%:90%)": 40.370740723341825, "WM(10%:90%)": 25.471191906503638 }, "unit": "Percent" } { "metric_stream_name": "QuickPartial-iuZ6Ec", "account_id": "<AWSアカウントID>", "region": "us-east-1", "namespace": "AWS/EC2", "metric_name": "EBSWriteBytes", "dimensions": { "InstanceId": "i-05faeef3f7981740b" }, "timestamp": 1650345000000, "value": { "max": 2.48485376E8, "min": 2270720.0, "sum": 2.50756096E8, "count": 2.0 }, "unit": "Bytes" } (中略) { "metric_stream_name": "QuickPartial-iuZ6Ec", "account_id": "<AWSアカウントID>", "region": "us-east-1", "namespace": "AWS/EC2", "metric_name": "EBSReadBytes", "dimensions": { "InstanceId": "i-05faeef3f7981740b" }, "timestamp": 1650345000000, "value": { "max": 2.5112576E7, "min": 0.0, "sum": 2.5112576E7, "count": 2.0, "p99": 2.507560372509185E7, "p95": 2.4928258153167E7, "p90": 2.474529313722882E7, "p80": 2.4383381953623008E7, "p70": 2.4026763885927953E7, "IQM": 1.1887483965086192E7, "tm99": 1.1979263869831756E7, "tc99": 1.98, "ts99": 2.3718942462266877E7, "PR(1:100)": 0.0, "TC(10%:90%)": 1.6, "TM(10%:90%)": 1.2021244772068955E7, "TS(10%:90%)": 1.923399163531033E7, "WM(10%:90%)": 1.2128253417655164E7 }, "unit": "Bytes" }
その後も放置していると、Kinesis Data Firehoseに設定している通り、1分間隔でオブジェクトが追加されていきます。
今回は選択した名前空間がAWS/Usage
のみなので放置していても課金額は微々たるものですが、CloudWatchとKinesis Data Firehoseの料金がもったいないので停止しておきます。
停止する際はCloudWatch Metric Streamsを選択して停止
ボタンをクリックします。そして、確認ウィンドウで停止
をクリックするだけです。
停止
をクリックすると、ステータスがすぐに停止
に変化しました。
気軽に停止できるのはありがたいですね。
今まで気づけなかった傾向や異常を素早く発見できるかも
Amazon CloudWatch Metric Streams が追加統計情報を新たにサポートしたアップデートを紹介しました。
このアップデートにより、今まで気づけなかった傾向や異常を素早く発見できるかもしれませんね。
この記事が誰かの助けになれば幸いです。
以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!